草庐IT

python 反序列化

全部标签

c# - 删除序列化程序创建的空 xmlns

我有一个由“添加服务引用...”操作生成的对象,我正在使用我编写的通用序列化程序手动序列化它。我的问题是数据协定有一些内部对象。序列化程序将一个空的命名空间属性添加到内部对象的起始标记中。有什么办法可以阻止这种情况发生吗? 最佳答案 如何使您的内部对象与根属于同一个命名空间?这样,省略xmlns是正确的后代的声明。您可以使用[assembly:ContractNamespace]属性以覆盖程序集中所有契约(Contract)的命名空间。引用DataContractNames举个例子。编辑:下面是一些示例的详细说明。假设您正在手动构建

python - 使用 ElementTree 在 python 中解析 xml

我是python的新手,我需要解析一些需要先清理的脏xml文件。我有以下python代码:importarffimportxml.etree.ElementTreeimportretotstring=""withopen('input.sgm','r')asinF:forlineininF:string=re.sub("[^0-9a-zA-Z/\s=!-\"\"]+","",line)totstring+=stringdata=xml.etree.ElementTree.fromstring(totstring)printdatafile.close解析:26-FEB-198715:0

python - 使用 Python 2 在 XML 中按属性查找所有节点

我有一个XML文件,其中包含许多具有相同属性的不同节点。我想知道是否有可能使用Python和任何其他包(如minidom或ElementTree)找到所有这些节点。 最佳答案 您可以使用内置的xml.etree.ElementTree模块。如果您想要所有具有特定属性的元素而不考虑属性值,您可以使用xpath表达式://tag[@attr]或者,如果您关心值(value)观://tag[@attr="value"]示例(使用findall()method):importxml.etree.ElementTreeasETdata="""

python - lxml.etree : Start tag expected, '<' 未找到,第 1 行,第 1 列

我想获取一些简单的xml文件并将它们一次性全部转换为CSV(尽管这段代码一次只针对一个文件)。在我看来好像没有正式的namespace,但我不确定。我有这段代码(我使用了一个header,SubmittingSystemVendor,但我真的想将它们全部写入CSV:importcsvimportlxml.etreex=r'C:\Users\...\jh944.xml'withopen('output.csv','w')asf:writer=csv.writer(f)writer.writerow('SubmittingSystemVendor')root=lxml.etree.from

python - 使用 Python 更改 XML 文件中包含的文本的最佳方法是什么?

假设我有一个名为“MyData.xml”的现有普通XML文件,其中包含以下内容:foo我想将“foo”的文本值更改为“bar”,结果如下:bar完成后,我想保存更改。完成这一切的最简单最简单的方法是什么? 最佳答案 使用Python的minidom基本上您将执行以下步骤:将XML数据读入DOM对象使用DOM方法修改文档将新的DOM对象保存到新的XML文档中在这个过程中,python规范应该会很好地帮助你。 关于python-使用Python更改XML文件中包含的文本的最佳方法是什么?,我

XML 序列化 - 客户端缺少命名空间前缀

我创建了一个.NETWeb服务,它返回一个对象,比如类“getResponse”。WS返回以下响应...OK当客户端实际上正在等待以下...(注意“mes-root:”前缀)我怎样才能做到这一点?我是否需要在getResponse类上设置某些XML序列化属性以使mes-root前缀显示在客户端?编辑:我在以下位置发现了一个类似的问题http://forums.asp.net/t/1249049.aspx.老实说,我不太明白它,我无法让它工作。 最佳答案 在通常情况下,客户端必须符合Web服务发送的响应类型。但是,您的情况似乎有所不同

python - 在 python 中快速简便地模板化 xml 文件的方法

现在我已经在我的python脚本中对整个xml文件进行了硬编码,并且只是执行了out.write(),但是现在它变得越来越难管理,因为我有多种类型的xml文件。什么是设置模板的最简单快捷的方法,以便我可以只给出变量名和文件名? 最佳答案 简短的回答是:您应该关注和处理数据(即python对象)而不是原始XML基本故事:XML应该是某些数据或数据集的表示。关于数据类型、它代表什么等等,您的问题没有太多细节——所以我会给您一些基本的答案。Python选择:BeautifulSoup、lxml和其他python库(ElementTree等

c# - 为什么我必须删除 xmlns 属性才能反序列化我的 XML 文件?

问题我正在使用Xsd2Code(XSD架构的.NET类生成器)在简单的设置文件架构上。出于某种原因,当我尝试使用内置的LoadFromFile()或Deserialize()方法,我得到一个似乎与xmlns有关的异常我的XSD和XML文件中的属性。如果我删除这些属性,异常就会消失。(有关实际导致异常的代码的详细信息,请参阅下面我的“更新”。)XSD文件XML文件(失败)-我在尝试反序列化时遇到异常SQLEXPRESSCLmasterXML文件(成功)-反序列化工作正常SQLEXPRESSCLmaster异常详细信息-如果我运行“失败示例”会发生什么Afirstchanceexcepti

python - 如何在 Python 和 LXML 中解析 XML?

这是我的项目:我正在使用RRDTool从WeatherBug绘制天气数据图表。我需要一种简单、高效的方法来从WeatherBug下载天气数据。我使用的是一个非常低效的bash-script-scraper,但后来转向了BeautifulSoup。性能太慢(它在RaspberryPi上运行)所以我需要使用LXML。我目前拥有的:fromlxmlimportetreedoc=etree.parse('weather.xml')printdoc.xpath("//aws:weather/aws:ob/aws:temp")但是我收到一条错误消息。Weather.xml是这样的:http://w

python - 元素树 : Can't build root tree when getting XML from webpage

我正在尝试解析从Web下载的XML页面。importrequestsurl="http://www.w3schools.com/xml/cd_catalog.xml"XML=requests.get(url)printXML.contenttree=ET.ElementTree(XML)root=tree.getroot()printroot.tag,root.attrib当我尝试这样做时,我遇到了两个错误之一对于上面的示例网页AttributeError:'Response'对象没有属性'tag'对于我正在查看的实际XML站点AttributeError:'str'对象没有属性'ta